// $Header: $

using System;
using System.Data;

namespace LogParser
{
    /// <summary>
    /// Summary description for LogParser.RegularExpressions.
    /// </summary>
    public class RegularExpressions
    {
        #region Public Member Variables

        public static string DATETIME = @"^L (\d{2})\/(\d{2})\/(\d{4}) - (\d{2}):(\d{2}):(\d{2})";
        public static string TEAMEVENT = @"^Team ""(\w+)""";
        public static string WORLDEVENT = @"^World triggered ""Round_";
        public static string PLAYEREVENT = @"^""(.+?)<\d+><STEAM_(\d:\d:\d+)><(\w*)>"" (.+?)$";
        
        public static string PLAYERMATCH = @"^""(.+?)<\d+><STEAM_(\d:\d:\d+)><(\w*)>""";

        public static string EVENT_SAY = @"^say ""(.+)""\s*$";
        public static string EVENT_SAY_TEAM = @"^say_team ""(.+)""\s*$";
        public static string EVENT_KILL = @"^killed "".+?<\d+><STEAM_(\d:\d:\d+)><\w+>"" with ""(.+?)""\s*(.*)$";
        public static string EVENT_CHANGECLASS = @"^changed role to ""(.+?)""\s*$";

        public static string EVENT_SUICIDE = @"^committed suicide with ""(.+?)""";


        public static string EVENT_TRIGGERED = @"^triggered ";
        public static string EVENT_TRIGGERED_CHARGEDEPLOYED = @"^triggered ""chargedeployed""";
        public static string EVENT_TRIGGERED_BUILTOBJECT = @"^triggered ""builtobject""";

        // triggered "killedobject" (object "OBJ_SENTRYGUN") (weapon "shotgun_soldier") (objectowner "|RES|Stinkfist<26><STEAM_0:1:229390><Blue>") (attacker_position "-2606 -1010 -84")
        public static string EVENT_TRIGGERED_KILLEDOBJECT = @"^triggered ""killedobject""";
        public static string EVENT_TRIGGERED_KILLEDOBJECT_ASSIST = @"^\(assist ""(.+?)""\)";


        public static string EVENT_TRIGGERED_KILLASSIST = @"^triggered ""kill assist"" against ";
        public static string EVENT_TRIGGERED_DOMINATION = @"^triggered ""domination"" against ";
        public static string EVENT_TRIGGERED_REVENGE = @"^triggered ""revenge"" against ";

        public static string EVENT_TRIGGERED_FLAGEVENT = @"^triggered ""flagevent"" ";
        public static string EVENT_TRIGGERED_CAPTUREBLOCKED = @"^triggered ""captureblocked"" ";

        #region Team Events

        //L 08/24/2008 - 18:54:52: Team "Blue" triggered "pointcaptured" (cp "4") (cpname "#Badlands_cap_red_cp1") (numcappers "1") (player1 "[Ars.NSFW]medbot^5 [Wiggles]<94><STEAM_0:1:349209><Blue>") (position1 "779 4169 0") 
        public static string EVENT_TEAM_POINTCAPTURED = @"^Team ""(.+?)"" triggered ""pointcaptured"" ";

        //L 08/24/2008 - 19:03:59: Team "Red" final score "2" with "4" players
//L 08/24/2008 - 19:03:59: Team "Blue" final score "3" with "5" players
        public static string EVENT_TEAM_FINALSCORE = @"^Team ""(.+?)"" final score ";


        #endregion

        #region WORLD

        // L 08/24/2008 - 19:03:44: World triggered "Round_Win" (winner "Blue")
        // L 08/24/2008 - 19:03:44: World triggered "Round_Length" (seconds "126.41")
        public static string WORLD_ROUNDWIN = @"^World triggered ""Round_Win""";
        public static string WORLD_ROUNDLENGTH = @"^World triggered ""Round_Length""";

        public static string WORLD_WINNER = @"^\(winner ""(.+?)""\)";
        public static string WORLD_SECONDS = @"^\(seconds ""(.+?)""\)";


        public static string WORLD_CPNUMBER = @"^\(cp ""(.+?)""\)";
        public static string WORLD_CPNAME = @"^\(cpname ""(.+?)""\)";
        public static string WORLD_NUMCAPPERS = @"^\(numcappers ""(.+?)""\)";
        public static string WORLD_CAPPERPLAYER = @"^\(player(\d+?) ""(.+?)""\)";

        public static string WORLD_EVENT = @"^\(event ""(.+?)""\)";
        public static string WORLD_WEAPON = @"^\(weapon ""(.+?)""\)";
        public static string WORLD_OBJECT = @"^\(object ""(.+?)""\)";
        public static string WORLD_OBJECTOWNER = @"^\(objectowner ""(.+?)""\)";

        // (attacker_position "-1151 -224 244") (victim_position "830 -95 296")
        public static string WORLD_POSITION = @"^(.+?)position(.+?)""\)";

        #endregion

        #endregion

        #region Public Properties

        #endregion

        #region Private Properties

        #endregion

        #region Public Member Functions

        #endregion

        #region Private Member Functions

        #endregion
    }
}

#region VSS Log

/*
 * $Log: $
 */

#endregion VSS Log